<!--

session机制采用的是在服务器端保持 HTTP 状态信息的方案
    当程序需要为某个客户端的请求创建一个session时，服务器首先检查这个客户端的请求里是否包含了一个session标识(即sessionId),
        如果已经包含一个sessionId则说明以前已经为此客户创建过session，
            服务器就按照session id把这个session检索出来使用(如果检索不到，可能会新建一个，
            这种情况可能出现在服务端已经删除了该用户对应的session对象，但用户人为地在请求的URL后面附加上一个JSESSION的参数)。
     如果客户请求不包含sessionId，则为此客户创建一个session并且生成一个与此session相关联的sessionId，这个session id将在本次响应中返回给客户端保存。



    HttpSession的创建：
        在JSP中：
              1.  jsp的指令的session属性为true，时会创建session的对象。
                  如果未false，则不会创建session对象。
              2.显示的创建
                    request.getSession();
                        如果请求中不含有HttpSession的对象，则创建一个新的HttpSession对象。
                        如果请求中含有HttpSession的对象，则返回该HttpSession的对象，不是创建一个新的HttpSession对象。
                    request.getSession(boolean b);
                        传入的值为false:
                                如果请求中不含有HttpSession的对象，也不创建新的HttpSession对象。
                                如果请求中含有HttpSession的对象，则返回该HttpSession的对象。
                        传入的值为true:
                                功能和原理 与 request.getSession();完全相同。
        在Servlet中
            不会默认的创建HttpSession的对象。
            只有显示的调用request.getSession(); 或者request.getSession(boolean b);  来创建HttpSession对象。

        常用的方法
            getId():获得JSESSIONID
            invalidate():使session失效。
            isNew():判断当前的session对象是否是一个新的HttpSession对象。
            getMaxInactiveInterval():获得session的最大存活时间  默认为1800秒  30分钟
                    tomcat中的web.xml文件中的配置
                    <session-config>
                                <session-timeout>30</session-timeout>  分钟为单位
                    </session-config>
            setMaxInactiveInterval(int i):设置Session的最大存活时间， 单位为秒
            getCreationTime():获得session的创建时间
            getLastAccessedTime()：获得上一次的访问时间
-->
<%@ page  contentType="text/html;charset=UTF-8"  isErrorPage="true"%>
<%@page language="java"  %>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Insert title here</title>
</head>
<body>
getId:<%=session.getId()%><br>
isNew:<%=session.isNew()%>
<%

    session.setMaxInactiveInterval(5);
%>
MaxInactiveInterval:<%=session.getMaxInactiveInterval()%>
getCreationTime:<%=session.getCreationTime()%>
getLastAccessedTime()：<%=session.getLastAccessedTime()%>
<%=session.getAttribute("abc")%>

</body>
</html>
